1. Field of the Invention
Apparatuses and methods consistent with the present invention relate to a system for motor position detection and velocity control.
2. Description of the Related Art
Servomotors are used in control systems for driving various mechanical loads in machine tools, etc. It is desirable to accurately control the velocity of the motor.
A conventional servo system is described with reference to FIG. 1. The servo system includes an electrical supply (mains electricity) 1, a servo amplifier 100, a motor 11, and an encoder 200. The mains electricity 1 supplies alternating current such as three-phase electric power of 200 V to the servo amplifier through power line 5.
The servo amplifier 100 includes a converter circuit 6 that rectifies the alternating current input from the power line 5 and generates a direct current with a voltage of 280V. The direct current is output to an inverter circuit 10. The inverter circuit 10 generates a voltage and supplies three phase electric power to the motor 11 via a power line 12. This voltage is generated according to the direct current input from the power line 7 and other feedback information.
The position of the motor 11 is monitored by a position detector 13 in the encoder 200. It is common that the motor 11 revolves planetary gears when the motor 11 is driven and the position detector 13 has an optical rotary encoder to detect optical pulses created by laser or light through the gear. By counting the number of pulses, the position detector 13 detects the position of the motor 11. A signal processing IC 51 encodes this position data and sends the encoded position data to a serial sender 52, which relays this information to a serial receiver 53 via a serial bus 59. Based on the received position information, the servo amplifier determines a velocity of the motor 11 using a velocity processor 54. A velocity controller 56 instructs an electric current controlling IC 55 (hereinafter, “IC 55”) to control the inverter circuit 10 based on the velocity output by the velocity processor 54. That is, the velocity controller 56 instructs the electric current controlling IC to increase or decrease the intensity of its output to the inverter circuit 10. Specifically, the velocity controller 56 provides an electrical current command (torque command) to the IC 55. The IC 55 also receives real motor feedback current from the inverter circuit 10. The IC 55 then compares the electric current command and current feedback received from the inverter circuit 10 and generates a voltage command based on the comparison. Based on the generated voltage command, a PWM signal is generated and provided it to the inverter circuit 10.
The inventor has identified the following problem with the above conventional system. Because the bandwidth of the serial bus 59 is limited, the servo amplifier 100 and the encoder 200 must wait until all the position data is transferred by the serial bus. While the servo amplifier 100 waits to receive the positional data from the encoder 200, the position of the servo motor 11 changes from the position represented by the positional data. As a result, the current position of the motor 11 as calculated by the servo amplifier 100 in the conventional technology contains some delays. And because of the transferring time of the serial bus, position data in the servo amplifier has some discrete time errors. Furthermore, the velocity data is calculated from the position data by using differential operation. Accordingly, the velocity data contains considerable errors and delays due to the errors and delays in the position data. Since the velocity data is used for velocity feedback control, errors, and delays in the velocity calculation may cause control instability that may result in a degradation of the servo performance and might deteriorate the productivity of, e.g., a manufacturing line.
Accordingly, a system is needed which would allow for a more real-time determination and subsequent control of the motor velocity.
The conventional system 1000 of FIG. 1 further includes a motion controller 4 that generates instructions to control the servo system based on programs written by users and executed at the motion controller 4 itself. These instructions are sent to the servo amplifier 100 via a motion control communication line 8 as digital or analog signals. The motion control communication line 8 can be embodied using various types of network connectivity such as Ethernet or dedicated serial communication. A position controller 57 instructs the velocity controller 56 of the desired velocity as instructed by the motion controller.